Input device with pattern and tactile feedback for computer input and control

ABSTRACT

The tactile input device is a user interface selection device used to transmit user information to a user interface interpretation module. The tactile input device allows a user to activate and operate applications running on a computing system through a single user interface selection device. The tactile input device includes a tactile surface angularly divided into a plurality of sections, or petals. The tactile surface is further separated by a central portion and an outer circumferential portion, neither of which are angularly divided by the petals. Each petal and portion are tactilely distinguished from an adjacent petal or portion. The tactile distinction provides a user with feedback relating to orientation over the surface such that the user may request the performance of a specific task to be implemented by the computer through the user interface interpretation module.

TECHNICAL FIELD

The invention relates generally to an input device that is operablyconnected to a computing system to provide computer input and control.More particularly, the invention relates to a tactile-patterned inputdevice for selecting controls and inputting information into a computingsystem and providing sensory feedback to the user.

BACKGROUND OF THE INVENTION

As computers have become more complex, user interfaces have had to adaptto allow the user to control the operations of the computer. Initially,the interface used was a command line interface, which utilized a seriesof typed commands formatted in a specific syntax familiar to thecomputer and eventually learned by computer users. This interface waseventually replaced by the Graphical User Interface (“GUI”), whichallows users to point to objects, buttons, and windows displayed likeitems on a desk. Interaction between the GUI and a user is accomplishedthrough a display and user interface selection device. Initially, theuser interface selection device was a light pen, a pen-based computercontrol requiring the user to select and highlight objects on the screenby touching the light to the object on the screen. However, thisimplementation had its disadvantages because, by design, the user'shands and the light pen would obscure a portion of the screen from theuser's own view. This and other disadvantages led to the development ofthe mouse, an interface control separate from the keyboard thatcontrolled a pointer on the GUI for selecting and highlighting objects,buttons, and windows.

Current methods available for text input and desktop environmentnavigation through a user interface selection device into a computingsystem are associated with at least one of several disadvantages.Although keyboards allow for fast textual input, they are extremelycumbersome for navigating through a desktop environment. Similarly,although a mouse is ideal for navigating through a desktop environment,it is not a good text-input solution. Likewise, joysticks andconventional laptop touchpads allow for fast navigation, but arecumbersome textual input devices. Most conventional systems alleviatethe aforementioned problems by a combination of a keyboard and a mouse,touchpad, or joystick. However, this implementation introduces anothersignificant obstacle of requiring two-hand operation of the userinterface.

The growth of the personal digital assistant (“PDA”) and wearablecomputer markets are associated with similar problems realized in thelarger-scale computing systems. As PDA technology continues to rapidlyadvance with respect to the size of PDA electronics and batteries, thesize of the handheld and mobile devices becomes more dependent upon theinput devices used.

The current most practiced method of interaction between a user and aPDA is through the use of a stylus. In stylus-based interaction, theuser holds the device in one hand and the stylus in the other. Whilesuch interaction is similar to the use of a conventional pad and paper,it is not without disadvantages. First, it requires two-hand operation.Second, complex software algorithms are typically needed to recognizethe user's handwriting. Third, stylus-based interaction requires theuser to look at the device while using it. Other methods of interaction,such as the 9-Key method commonly used in cellular telephones and voicerecognition, are characterized by any one of the above-mentioneddisadvantages.

SUMMARY OF THE INVENTION

In accordance with this invention, the above and other problems aresolved by the tactile input device. The tactile input device is a userinterface selection device operably connected to a user interfaceinterpretation module providing user interaction to a computing system.Computer control using the tactile input device may be performed withonly one hand.

The tactile input device is designed to have three-dimensionalcharacteristics and tactile patterns so that the user can feel the exactlocation of his/her finger on the pad. The tactile input device isdesigned to lie directly under the thumb of the user's hand that isholding the input device, thereby allowing single-hand operation of thecomputing system during user-system interaction. In addition to beingdesigned for text input and editing, the tactile input device is alsodesigned for direct selection of programs and menu items, therebyallowing operation of the computing system through only one inputdevice.

The tactile input device includes a pattern of raised (tactile) linesarranged in a pattern of a predetermined number of petals, each petaloriginating around the center of the input device and extending outward,a tactile-defined central portion having a raised dot in the center, andat least one tactile-defined outer circumferential portion. Every otherpetal contains raised lines to distinguish tactile sensing betweenadjacent petals. Each petal and portion is associated with afunctionality directing the performance of a task in the computingsystem. Text input and editing are accomplished by stroke actionsbeginning in the inner portion, continuing to a petal or petals(depending upon the desired character), and ending in the inner portion.Programs are selected on the tactile input device by selection of aposition corresponding to the desired program referenced on an outercircumferential portion of the tactile input device. Once the desiredprogram is selected, the functionality associated with each petal andeach circumferential portion is updated to represent tasks associatedwith the program. The functionalities associated with the petals andcircumferential portions are continually updated to represent new tasks,operations, and characters following each selection, or input stroke, onthe tactile input device.

In accordance with other aspects, the present invention relates to amethod of inputting control and text commands into a computing systemfrom a tactile patterned input device. The method locates at least oneinput sensing device on each section of a tactile surface of the inputdevice. Once the process has begun, the input sensing devices areinitialized to represent a user request to perform a task in thecomputing system. The input sensing devices corresponding to the userrequest are selected through an input stroke identifying the task to beperformed. Once the user's selection of the input sensing devices aredetected by the input device, a selection signal is sent to thecomputing system thereby inputting the command into the computingsystem. The task is either the activation or operation of an applicationinstalled on the computing system.

In accordance with still other aspects, the present invention relates toa tactile-surfaced input device, or user interface selection device, forinputting information into a computing system. The tactile surface isdivided by a plurality of sections, or petals, with each section beingtactilely distinguished from its adjacent sections. Each sectioncontains one or more input sensing devices detecting an input stroke.Each input stroke represents a user request. Once selected, the inputsensing device transmits a selection signal indicative of the userrequest to the computing system. The selection signal carriesinformation to be generated by the computing system. The informationidentifies tasks, or commands, to be implemented by the computingsystem.

The invention may be implemented as a computer process, a computingsystem or as an article of manufacture such as a computer programproduct or computer readable media. The computer program product may bea computer storage media readable by a computing system and encoding acomputer program of instructions for executing a computer process. Thecomputer program product may also be a propagated signal on a carrierreadable by a computing system and encoding a computer program ofinstructions for executing a computer process.

The great utility of the invention is that the tactile input deviceintroduces a fast and convenient device for interacting with the userinterface installed on a computer. The three-dimensional and tactilecharacteristics of the present invention provide the user with sensoryfeedback during the user's operation of the input device. The sensoryfeedback can be used without a display and only requires the use of onehand. Since desktop environment navigation and textual input are bothsupported by the tactile input device, users are provided a way tooperate their devices through a single input device. The advantages ofthis utility become even more apparent as consumers demand smaller,faster, and easier to use computers. In particular, this invention willbe of great importance to designers of personal digital assistants,mobile computers, and wearable computers. Not only does the presentinvention allow users to operate such devices using a single hand, butit also provides for high-speed interaction while on the move.

The tactile input device is tactically designed to lead to musclememory, thereby enabling use of the input device without having toreference a display. The tactile input device gives a user completecontrol over the computer. In particular, a user may navigate through adesktop environment and input/edit text into applications running on thecomputing system while using only the tactile input device.

These and various other features, as well as advantages, whichcharacterize the present invention, will be apparent from a reading ofthe following detailed description and a review of the associateddrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an embodiment of the tactile touchpad.

FIG. 2A shows the tactile touchpad of FIG. 1 connected to a personaldigital assistant in accordance with an embodiment of the presentinvention.

FIG. 2B shows the personal digital assistant of FIG. 2 having alandscape orientation and adapted for left hand use.

FIG. 2C shows the personal digital assistant of FIG. 2B adapted forright-hand use.

FIG. 3 shows a conceptual illustration depicting interaction between thetactile touchpad and a computing system.

FIG. 4 illustrates an exemplary small computing device for operating inaccordance with the various embodiments of the invention.

FIG. 5 illustrates an arrangement of information elements provided bythe user interface to be used by the tactile touchpad as selectionelements in accordance with one embodiment of the present invention.FIG. 5 also illustrates an input stroke to be used for inputting textwith the tactile input device in accordance with one embodiment of thepresent invention.

FIG. 6 illustrates general operations of a user interface as itinteracts with a tactile touchpad to control a computing device inaccordance with one embodiment of the present invention.

FIGS. 7A and 7B illustrate operations of a user interface in thecontrol-operating mode as it interacts with a tactile touchpad tocontrol operations of applications running on a computing system.

FIG. 8 illustrates operations of a user interface in text-operating modeas it interacts with a tactile touchpad to input and edit text intovarious applications.

FIG. 9 illustrates a directional orientation of the tactile input deviceas interpreted by a user interface in the operational flow of FIG. 8.

FIG. 10 illustrates operations associated with a cancel lip used toabort an input command in the middle of an input stroke in accordancewith one embodiment of the present invention.

FIG. 11 generally illustrates operations of the tactile input device forproviding computer input and control to a computing system in accordancewith an embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 illustrates a tactile input device 100 in accordance with anembodiment of the present invention. A surface of the tactile inputdevice 100 is divided into various sections having one or more inputsensing devices 120 for detecting an input stroke. In the embodiment ofFIG. 1, the sections include a petals portion 101 having eight angularpetals 102, a central portion 104 having a raised dot 106, and an outercircumferential portion 108. In one embodiment (as shown in FIG. 1), thetactile input device 100, the central portion 104, and the outercircumferential portion 108 are circularly defined. In anotherembodiment, the tactile input device 100, the central portion 104, andthe outer circumferential portion 108 are any one of a number ofgeometric shapes, such as, but not limited to, rectangular, triangular,oval, octagonal, or hexagonal. While a number of geometric embodimentshave been described for the tactile input device 100, any number ofcombinations of geometric shapes might be used with the tactile inputdevice 100.

In accordance with one embodiment, every other angular petal 102 istactically defined with raised lines 110 in order for a user tophysically distinguish between adjacent petals 102. Each angular petal102 is outlined with a raised border 112 in order to further tacticallydistinguish the boundaries of each angular petal 102. The outercircumferential portion 108 is outlined with raised borders 114 and 116.Alternatively, the outer circumferential portion 108 could be tacticallydefined by being raised, by being filled with raised lines, or by beingmanufactured with a material having a different feel than the rest ofthe tactile input device 100. In accordance with an embodiment, thecentral portion 104 is outlined by a raised border 118. Alternatively,the central portion 104 could be tactically defined by being raised, bybeing filled with raised lines, or by being manufactured with a materialhaving a different feel than the rest of the tactile input device 100.The tactile input device 100 may also be coupled to a trigger (notshown) to add functionality.

In one embodiment, the tactile input device 100 is a touchpad withtactile features described above. In another embodiment, the inputdevice 100 is a plurality of keys or buttons with the same pattern andtactile features described above. For example, central portion 104,petals 102 and circumferential portion, or ring, 108 might each beseparate keys. In another embodiment, the input device 100 might be abutton mounted on a post surrounded by a ring key 108. The button wouldcontain portions 102, 104 and borders 112, 114 with the tactile patterndiscussed above. The button/post can be depressed to input informationfrom the central portion 104 and can be tilted to input information frompetals 102. Ring key 108 could be tilted or depressed to inputinformation to the computing system. While a number of embodiments havebeen described for the tactile input device 100, any number ofcombinations of pads, keys, buttons, and posts might be selected toimplement the tactile input device 100.

FIG. 2A illustrates the use of a tactile input device 100 in accordancewith an embodiment of the present invention. In FIG. 2A, a conceptualrepresentation of a personal digital assistant (“PDA”) 200 controlled bya tactile input device 100 is shown in portrait orientation. The tactileinput device 100 is shown as the only input device for the PDA 200.Although the tactile input device 100 is shown physically mounted on thePDA 200, other connections, such as an infrared or radio frequencyconnection, may be used as connections between the PDA 200 and thetactile input device 100.

FIG. 2B illustrates the PDA 200 of FIG. 2A, however, in a landscapeorientation and adapted for left-hand use. FIG. 2C illustrates the PDA200 of FIG. 2A, however, adapted for right-hand use. In order to switchhand orientation, the output of the display (such as 306 in FIG. 3)should be rotated 180 degrees. In other embodiments, the tactile inputdevice 100 may be used as the primary input device to a cellulartelephone (not shown), a wearable computer (not shown), a personalcomputer (not shown), or any other computing system or device.

Referring to FIG. 3, a conceptual illustration of the interactionbetween the tactile input device 100 and a computing system 300 isshown. The computing system 300 includes an operating system 302, a userinterface interpretation module 304, and a display 306. In accordancewith an embodiment, the user interface interpretation module 304 is apart of the user interface of the computing system 300 that interpretsuser information transmitted to the interface. The user interfaceinterpretation module 304 may be designed with either software or logic.The user interface interpretation module 304 is a part of the operatingsystem 302, but could be a program running on the operating system 302.A user interacts with the computing system 300 through the tactile inputdevice 100, which is operably connected to the user interfaceinterpretation module 304. In accordance with an embodiment, the userinterface interpretation module 304 contains capabilities of supportingone user input device (such as 100) providing all input sensing devices120. The tactile input device 100 and the user interface interpretationmodule 304 are developed in a way so that the computing system 300 iscontrolled by the tactile input device 100 through the user interfaceinterpretation module 304. The display 306 provides visual feedback tothe user of operations performed by the user interface interpretationmodule 304 pursuant to commands transmitted from the tactile inputdevice 100.

FIG. 4 illustrates an example of a suitable operating environment 410 inwhich embodiments of the invention may be implemented. The operatingenvironment 410 is only one example of a suitable operating environmentand is not intended to suggest any limitation as to the scope of use orfunctionality of the invention. Other well known computing systems (suchas 300), environments, and/or configurations that may be suitable foruse with the invention include, but are not limited to, personalcomputers, server computers, handheld (such as 200) or laptop devices,multiprocessor systems, microprocessor-based systems, programmableconsumer electronics, network PCs, minicomputers, mainframe computers,distributed computing environments that include any of the above systemsor devices and the like.

FIG. 4 shows components of a small computing device 410. Various smallcomputing devices may have all or some of the components illustrated inFIG. 4. The small computing device has a processor 412, a memory 416,and a tactile input device 100.

The memory 416 generally includes both volatile memory (e.g. RAM) andnon-volatile memory (e.g. ROM, PCMCIA cards, etc.). An operating system(302 in FIG. 3) is resident in memory 416 and executes on the processor412. The small computing device 410 includes an operating system 418(302 in FIG. 3), such as the Windows® CE operating system from MicrosoftCorporation or other operating systems including device specificoperating systems for the simple computing device.

One or more application programs 420 are loaded into memory 416 and runon the operating system 418. Examples of applications include telephonyprograms, email programs, scheduling programs, PIM (personal informationmanagement) programs, word processing programs, spreadsheet programs,Internet browser programs, etc. The small computing device 410 also hasa notification manager 422 loaded in memory 416. The notificationmanager 422 handles notification requests from the applications 420.

The small computing device 410 has a power supply 424, which isimplemented as one or more batteries. The power supply 424 might furtherinclude an external power source that overrides or recharges thebatteries mounted in the device. The external power source might includean AC adapter or a powered docking cradle.

The small computing device 410 is also shown with two types of externalnotification plus a microphone/speaker 430. The external notificationdevices are an LED 426 and a vibration device 428. In addition, thespeaker in the microphone/speaker 430 may be used to provide audionotification. These notification devices are directly coupled to thepower supply 424 so that when activated, they remain on for a durationdictated by the notification mechanism. Switch 438 is controlled by theprocessor 432 to shut off power to conserve energy.

The small computing device 410 typically includes at least some form ofcomputer readable media. Computer readable media can be any availablemedia that can be accessed by small computing device 410. By way ofexample, and not limitation, computer readable media may comprisecomputer storage media and communication media. Computer storage mediaincludes volatile and nonvolatile, removable and non-removable mediaimplemented in any method or technology for storage of information suchas computer readable instructions, data structures, program modules orother data. Computer storage media includes, but is not limited to, RAM,ROM, EEPROM, flash memory or other memory technology, BC-ROM, digitalversatile disks (DVD) or other optical storage, magnetic cassettes,magnetic tape, magnetic disk storage or other magnetic storage devices,or any other medium which can be used to store the desired informationand which can be accessed by the small computing device 410.Communication media typically embodies computer readable instructions,data structures, program modules or other data in a modulated datasignal, such as a carrier wave or other transport mechanism, andincludes any information delivery media. The term “modulated datasignal” means a signal that has one or more of its characteristics setor changed in such a manner as to encode information in the signal. Byway of example, and not limitation, communication media includes wiredmedia, such as a wired network or direct-wired connection, and wirelessmedia such as acoustic, RF, infrared and other wireless media.Combinations of any of the above should also be included within thescope of computer readable media.

In one embodiment of the present invention, interaction between thetactile input device 100 and the computing system 300 is administeredthrough a selection signal transmitted from an input sensing device 120on the tactile touchpad 100. Each input sensing device 120, describedbelow through the operational flow of FIG. 11, is linked to aninformation, or control, element associated with a task to be performedin the computing system 300. As discussed below, a task is a command tobe implemented in the computing system. In accordance with variousembodiments, the task might be executed by the operating system, theapplication program calling the operation, the user interface throughwhich the application is operating, or the navigational interface. Inparticular, selection of an information element or group of informationelements requests performance of a particular task by one of the variousembodiments. For instance, an application selection information elementis associated with the task of activating an application installed onthe computing system, an application operation information element isassociated with the task of providing control over an operation of anapplication, and a text input information element is associated with thetask of textual and character input into an application. Additionallyand in other embodiments, the information element, which is controlledby a user interface interpretation module 304, might independentlyprovide for the execution of the particular task.

Each input sensing device 120 is linked to an information elementassociated with a specific task. The information elements define tasksto be administered and are dynamically generated for each input sensingdevice 120 following the performance of a task in the computing system300. In accordance with one embodiment, a single information element isthe only information element associated with a particular task. In otherembodiments, a group of information elements might be associated withone particular task. In this embodiment, selection of all theinformation elements associated with the task requests performance ofthe task.

According to one embodiment, the entering and editing of text andoperations associated with editing text, might be a task. In otherembodiments, activation and operation of an application might be tasks.In accordance with various embodiments, the application might be anapplication program, an operating system, the user interface operatingwith the tactile input device 100, a desktop environment defined by auser interface, or any other program operating on the operating systemof a computing system 300. Immediately following start-up, or boot, ofthe computing system 300, the primary active application is a desktopenvironment prompting a user to select from various applicationsoperating on the desktop environment. A desktop environment is anarrangement defined by the user interface controlling operations of theapplications installed on the operating system 302. The desktopenvironment is a media through which the user may initiate computercontrol and application activation.

In yet other embodiments, overall computer control might be a task. Inthis embodiment, control over operations of either the operating system302, the desktop environment, or the user interface might beadministered. Whereas input sensing devices 120 are associated with thetactile input device 100, information elements are dynamically generatedby the user interface interpretation module 304 for each instance of theuser interface 304. Information elements are dynamically updated inlight of the current operation, task, or function to be performed.

FIG. 5 illustrates a default arrangement of information elements, suchas a character pattern 500 and an application navigation directory ring506, to be used with one embodiment of the present invention wherein thetactile input device 100 is used to select information elements. Thedefault arrangement also includes application specific menu items 508for the primary active application of the desktop environment.Information elements may be graphical informational elements such asicons, images, Internet links, file links, tasks, and programoperations, etc. or alphabetic, numeric, or symbolic characters. Theapplication navigation directory ring 506 dictates which petal 102contains an application link for activating specific applicationprograms. As will be illustrated in FIGS. 7A and 7B, applications areselected by a single touch and lift on a petal 102 corresponding to thedesired application, as referenced by the application navigationdirectory ring 506. If the application selected is already open, thenselection of the application from the application navigation ring 506activates the selected application on the desktop environment.

In one embodiment of the present invention, text is selected inaccordance with the Qwickwriting® technique taught by Kenneth Perlin inU.S. Pat. Nos. 5,764,794 and 6,031,525. Characters are entered/editedusing the Qwickwriting® technique based upon selection of petals 102.The input strokes defining characters begin and end in the centralportion 104. A particular character is entered based upon the range ofpatterns detected by the tactile input device 100 between the beginningand end of the input stroke. An input stroke is accomplished by a userinitiating contact with a first position on the surface of the tactileinput device 100 and then either a) continuing the stroke to anotherposition on the surface prior to terminating contact, or b) immediatelyterminating the stroke contact prior to continuing to another position.In accordance with one embodiment, a user strokes over a touchpadsurface of the tactile input device 100 with a finger, and morepreferably, with a thumb. In this embodiment, contact initiation isadministered by touching the touchpad surface with a finger and contacttermination is administered by lifting the finger. If the user selects apetal 102 using a touch and immediate lift, or press stroke, then, inaccordance with one embodiment, the user has activated an applicationprogram assigned to the particular petal 102 selected.

In accordance with an embodiment, input strokes are terminated each timethe user selects the central portion 104 and each time the userterminates, or lifts, the input stroke from the tactile input device100. An input stroke may begin at any position of the tactile inputdevice 100. As an example, FIG. 5 illustrates selection of the character“u” on the tactile input device 100. Stroke 550 begins in the centralportion 104 and continues on to an origination petal 502 representingthe letters “u,” “t,” and “v.” The character “u” is selected by a stroke552 continuing to one selection petal 504 counterclockwise from theorigination petal 502. The character is inputted by a stroke 554 fromthe selection petal 504 to the central portion 104. Strokes 550–554define an input stroke as the continuous movement wherein the user'sfinger is not lifted until the conclusion of the stroke 554 in thecentral portion 104. FIGS. 6–9 further illustrate operations performedwhen committing to the tactile input device 100.

Referring back to FIG. 1, in one embodiment of the present invention,the outer circumferential portion 108 is a cancel lip for a user toabort the operation after touching a petal 102. Otherwise, once a userhas touched a petal 102, the user must commit to the operation. FIG. 10further illustrates operation of the cancel lip.

The logical operations of the various embodiments of the presentinvention in FIGS. 6, 7, 8, 10, and 11 are implemented (1) as a sequenceof computer implemented acts or program modules running on a computingsystem and/or (2) as interconnected machine logic circuits or circuitmodules within the computing system. The implementation is a matter ofchoice dependent on the performance requirements of the computing systemimplementing the invention. Accordingly, the logical operations makingup the embodiments of the present invention described herein arereferred to variously as operations, structural devices, acts ormodules. It will be recognized by one skilled in the art that theseoperations, structural devices, acts and modules may be implemented insoftware, in firmware, in special purpose digital logic, and anycombination thereof, without deviating from the spirit and scope of thepresent invention as recited within the claims attached hereto.

FIG. 11 generally illustrates operations of the tactile input device 100for providing computer input and control to a computing system 300 inaccordance with an embodiment of the present invention. The operationfor providing computer input and control begins with start operation1100 once the user initiates contact with the tactile input device 100.In one embodiment, the tactile input device 100 is a touchpad havingsensors for detecting touch by the user. The sensors are input sensingdevices 120 that transmit selection signals indicative of a user requestto the user interface interpretation module 304. While a sensorytouchpad is generally described in the operation flow of FIG. 11 andmore particularly described in FIGS. 6 through 10, any number ofcombinations of pads, keys, buttons, and posts might be selected as aninput sensing device 120 to the user interface interpretation module304.

Start operation 1100 initiates the operation flow for providing arequest associated with computer input and control to a user interfaceinterpretation module 304 through the tactile input device 100. Detectoperation 1102 detects selection of an input sensing device 120. Eachinput sensing device 120 is linked to an information elementrepresenting a task to be performed in the computing system 300.According to various embodiments, the entering and editing of text, andoperations associated with editing text, activation of an application,operation of an application, and overall computer control might all betasks to be administered in the computing system 300. As described inFIGS. 7 and 8, the information elements associated with each inputsensing device 120 are dynamically updated in light of the current taskto be performed. Once selection of an input sensing device 120 isrealized, transmission operation 1104 transmits a selection signal fromthe tactile input device 100 to the user interface interpretation module304. A selection signal is a signal from an input device (such as 100)which is recognizable by the user interface interpretation module 304 asa task to be performed in the computing system 300. Followingtransmission operation 1104, termination operation 1106 terminates theoperation flow.

In one embodiment, a particular task associated with an input sensingdevice 120 might be the entering of a character into an application. Inanother embodiment, a particular task might be the activation of anapplication on the display. In yet another embodiment, a particular taskmight be the generation of updated information elements for anapplication operating through the user interface 100. For example, theparticular task might be the opening of the menu items 508 of the filemenu of an application.

FIG. 6 further illustrates the operations performed by the tactile inputdevice 100 in detecting selection of an input sensing device 120 andtransmitting the selection signal associated with the selection to theuser interface interpretation module 304. In particular, FIG. 6 furtherdescribes the operations of detect operation 1102 and transmissionoperation 1104. The operational flow of FIG. 6 illustrates userselection of one of two operating modes of user interface interpretationmodule operation based upon the location of the user's initial selectionon the tactile input device 100. The two rendering modes of userinterface interpretation module operation are a text-operating mode anda control-operating mode. FIGS. 7 through 10 elaborate on FIG. 6, thusproviding further detail of the operations triggered through a userinterface interpretation module 304 controlled by the tactile inputdevice 100. In an embodiment, interface default operation 600, providedby the user interface interpretation module 304, initializes theinformation elements associated with the input sensing devices 120 ofthe tactile input device 100 to an application arrangement incorporatingthe character pattern of FIG. 5. The application arrangement containsinformation elements representing tasks associated with operating theactive application running through the user interface. In accordancewith various embodiments, the application might be an applicationprogram, an operating system, a desktop environment defined by a userinterface, or any other program operating on the operating system of acomputing system 300. In one embodiment the application arrangementmight be defined as an initial/default arrangement specified by theactive application. In another embodiment, the arrangement might be aninstance defined by performance of an immediately previous task.

Sensory operation 602 detects when a user initiates contact with thesurface of the tactile input device 100. Once a user touches the tactileinput device 100, sensory operation 602 enables request operation 604.Request operation 604 detects whether the user's input stroke begins onthe central portion 104 of the tactile input device 100. If the inputstroke begins on the central portion 104, then text operation 608transmits a text selection signal to the user interface interpretationmodule 304 activating the text-operating mode for text inputting andediting. FIG. 8 shows an embodiment of the operational flow of thetext-operating mode of the user interface interpretation module 304wherein the input sensing devices 120 of the tactile input device 100are used to select information elements related to text input andediting. Once text-operating mode is complete, as described below inFIG. 8, operation flow is terminated and initialized to beginning 599.If request operation 604 detects that the user has not selected thecentral portion 104, then navigation operation 606 transmits a controlselection signal to the user interface interpretation module 304activating the control-operating mode for computer control andnavigation. FIGS. 7A and 7B show an embodiment of the operational flowof the control-operating mode of the user interface interpretationmodule 304 wherein input sensing devices 120 of the tactile input device100 are used to select information elements related to computer controland application navigation. Once the control-operating mode is complete,as described below in FIGS. 7A and 7B, operation flow is terminated andinitialized to beginning 599.

In the text-operating mode, the tactile touchpad is used to input textcommands. Accordingly, the primary task to administer is the entering oftext and character inputs through a text stroke. FIG. 8 illustratesvarious text strokes administering this task in accordance with oneembodiment of the present invention. Direction operation 800 in FIG. 8detects which direction the user's input stroke continues from thecentral portion 104. Upon detection by direction operation 800, aselection signal indicative of the direction is sent to the userinterface interpretation module 304 as described in FIG. 11. Inreferencing the direction, the top petal 102 of the tactile input device100 is due north. FIG. 9 is an illustration of one embodiment of theinvention showing a directional orientation of the tactile input device100 as interpreted by the user interface interpretation module 304 inthe operation flow of FIG. 8. If the origination petal 502 (the firstpetal selected in the input stroke) is the north petal 900 (FIG. 9), asdetected by direction operation 800, then operation flow passes to liftoperation 802. Lift operation 802 detects whether the user completed theinput stroke at the origination petal 900. In an embodiment, the inputstroke is completed if the user lifts his finger from the tactile inputdevice 102. If the input stroke is completed, a selection signalindicative of the detection is sent to the user interface interpretationmodule 304 as described in FIG. 11 and operation flow passes to cursoroperation 804. Cursor operation 804 moves the cursor in the text editorup one line. Once the cursor is moved up one line, operation flow isterminated. If the input stroke is not completed, as detected by liftoperation 802, a selection signal indicative of this detection is sentto the user interface interpretation module 304 as described in FIG. 11and operation flow passes to return operation 806. Return operation 806detects whether the user's input stroke continues from the originationpetal 502 directly to the central portion 104. If the input strokereturns directly to the central portion 104, a selection signalindicative of this detection is sent to the user interfaceinterpretation module 304 as described in FIG. 11 and operation flowpassed to the text input operation 808. Text input operation 808 employsthe specific Qwickwriting™ command or character in accordance with theQwickwriting™ technique (referenced above). Once the text is entered,operation flow is terminated.

If the input stroke does not return directly to the central portion 104but instead continues to an adjacent selection petal (a petal adjacentthe origination petal), as detected by rotation operation 810, then aselection signal indicative of this detection is sent to the userinterface interpretation module 304 as described in FIG. 11 andoperation flow passes to a second return operation 812. The secondreturn operation 812 detects whether the input stroke has continued fromthe adjacent selection petal directly to the central portion 104. If theinput stroke returns directly to the central portion 104, then aselection signal indicative of this detection is sent to the userinterface interpretation module 304 as described in FIG. 11 andoperation flow passes to the text input operation 808. If the inputstroke does not immediately return to the central portion 104 or ifrotation operation 810 detects that the input stroke did not continue toan adjacent petal, then a selection signal indicative of this detectionis sent to the user interface interpretation module 304 as described inFIG. 11 and operation flow is terminated without successfully completingan input operation.

If directional operation 800 detects that the origination petal 502 iseither the east 902 (FIG. 9), south 904 (FIG. 9), or west 906 (FIG. 9)petal, then the text-operating mode operates in exactly the sameoperational flow, however, if the user lifts at the origination petal502, then cursor operation 804 will move the cursor that direction. Forexample, if the origination petal 502 is the east petal 902, then cursoroperation 804 (if enabled) moves the cursor one character space to theright. Likewise, if the origination petal 502 is the south petal 904,then cursor operation 804 (if enabled) moves the cursor one line down.Finally, if the origination petal 502 is the west petal 906, then cursoroperation 804 (if enabled) moves the cursor one character to the left.

If the origination petal 502 is the northeast petal 908, as detected bydirection operation 800, then a selection signal indicative of thisdetection is sent to the user interface interpretation module 304 asdescribed in FIG. 11 and operation flow passes to lift operation 814.Lift operation 814 detects whether the user completed the input strokeat the origination petal 502. In an embodiment, the input stroke iscompleted if the user lifts his finger from the tactile input device102. If the input stroke is completed, then a selection signalindicative of this detection is sent to the user interfaceinterpretation module 304 as described in FIG. 11 and operation flowpasses to drag-out operation 816. Drag-out operation 816 invokes thedrag-out functions of the textual input technique for the specific macroor function represented by the information element in the northeastpetal 908. Once execution of the macro or function is complete,operation flow is terminated. If the input stroke is not completed, asdetected by lift operation 814, then a selection signal indicative ofthis detection is sent to the user interface interpretation module 304as described in FIG. 11 and operation flow passes to return operation818. Return operation 818 detects whether the user's input strokecontinues from the origination petal 502 directly to the central portion104. If the input stroke returns directly to the central portion 104,then a selection signal indicative of this detection is sent to the userinterface interpretation module 304 as described in FIG. 11 andoperation flow passes to text input operation 808. Text input operation808 employs the specific Qwickwriting™ command or character inaccordance with the Qwickwriting™ technique (referenced above). Once thetext is entered, operation flow is terminated.

If the input stroke does not return directly to the central portion 104but instead continues to an adjacent selection petal, as detected byrotation operation 820, then a selection signal indicative of thisdetection is sent to the user interface interpretation module 304 asdescribed in FIG. 1 and operation flow passes to a second returnoperation 822. The second return operation 822 detects whether the inputstroke has continued from the adjacent selection petal directly to thecentral portion 104. If the input stroke returns directly to the centralportion 104, then a selection signal indicative of this detection issent to the user interface interpretation module 304 as described inFIG. 11 and operation flow passes to text input operation 808. Ifrotation operation 820 detects that the input stroke did not continue toan adjacent petal, then a selection signal indicative of this detectionis sent to the user interface interpretation module 304 as described inFIG. 11 and operation flow is terminated without successfully completingan input operation.

If the second return operation 822 detects that the input stroke did notcontinue directly to the central portion 104, then a selection signalindicative of this detection is sent to the user interfaceinterpretation module 304 as described in FIG. 11 and operation flowpasses to a second rotation operation 824. Second rotation operation 824detects whether the input stroke continued from the adjacent selectionpetal 504 to a next adjacent selection petal (a petal adjacent theadjacent selection petal). If the input stroke did not continue to thenext adjacent selection petal, then a selection signal indicative ofthis detection is sent to the user interface interpretation module 304as described in FIG. 11 and operation flow is terminated withoutsuccessfully completing an input operation.

If the second rotation operation 824 detects that the input strokecontinues directly to the next adjacent selection petal, then aselection signal indicative of this detection is sent to the userinterface interpretation module 304 as described in FIG. 11 andoperation flow passes to a third return operation 826. The third returnoperation 826 detects whether the input stroke has continued from thenext adjacent selection petal directly to the central portion 104. Ifthe input stroke returns directly to the central portion 104, then aselection signal indicative of this detection is sent to the userinterface interpretation module 304 as described in FIG. 11 andoperation flow passes to text input operation 808. If the input strokedoes not return directly to the central portion 104, then a selectionsignal indicative of this detection is sent to the user interfaceinterpretation module 304 as described in FIG. 11 and operation flow isterminated without successfully completing an input operation.

If directional operation 800 detects that the origination petal 502 iseither the southeast 910 (FIG. 9), southwest 912 (FIG. 9), or northwest914 (FIG. 9) petal, then the text-operating mode operates in exactly thesame operational flow as for the northeast petal 908 (FIG. 9).

Referring back to FIG. 6, if request operation 604 detects that the userhas not selected the central portion 104, then navigation operation 606transmits a selection signal to the user interface interpretation module304 activating the control-operating mode for computer control andnavigation. FIGS. 7A and 7B show an embodiment of the operational flowof the control-operating mode of the user interface interpretationmodule 304 wherein input sensing devices 120 of the tactile input device100 are used to select information elements related to computer controland application navigation. Once control-operating mode is complete,operation flow is terminated and initialized to beginning 599.

In the control-operating mode, the tactile touchpad is used to inputcontrol commands. Accordingly, the primary task to administer isselection of a control operation of an application through a controlstroke. In accordance with an embodiment, a control operation might bethe activation of an application or the implementation of an operationof the application. FIGS. 7A and 7B illustrate various control strokesselecting a control operation task in accordance with one embodiment ofthe present invention. Referring to FIGS. 7A and 7B, thecontrol-operating mode of the user interface interpretation module 304is entered through the operation flow of FIG. 6. Lift operation 700detects whether the user performed a touch and lift on a petal 102 ofthe tactile input device. If the user performed a touch and lift, then aselection signal indicative of this detection is sent to the userinterface interpretation module 304 as described in FIG. 11 andinterface selection operation 704 is activated by the user interfaceinterpretation module 304. Selection operation 704, inherent in the userinterface interpretation module 304, assigns a variable, n, to thenumber of the petal 102 selected. Interface status operation 706,inherent in the user interface interpretation module 304, determineswhether the application program referenced by petal n is an applicationalready activated on the desktop environment. If interface statusoperation 706 concludes that the application program is not opened, theninterface launch operation 708, an operation performed by the userinterface interpretation module 304, calls the execution program of theapplication in order to launch the application on the desktop. If theprogram is activated, as determined by interface status operation 706,or once the program is launched by interface launch operation 708,interface activation operation 710, an operation performed by the userinterface interpretation module 304, activates the application to be theprimary application on the display 306. Interface information operation712, an operation performed by the user interface interpretation module304, updates the information elements of the input sensing devices 120of the tactile input device 100 to represent tasks specific to theactivated application. Interface control operation 713, an operationperformed by the user interface interpretation module 304, determineswhether the tasks and operations represented by the information elementsare associated with either the control-operating mode or thetext-operating mode of the user interface interpretation module 304. Ifthe information elements are associated with the control-operating mode,then operation flow passes to touch operation 716. If the informationelements are associated with the text-operating mode, then operationflow is terminated and may be re-initiated at beginning 599.

Touch operation 716 detects whether the user has touched the centralportion 104 of the tactile input device 100. If the user has notselected the central portion 104, then a selection signal indicative ofthis detection is sent to the user interface interpretation module 304as described in FIG. 11 and operation flow passes to lift operation 700.From lift operation 700, operation flow in the control-operating mode iscontinued as described earlier and below. If the user has initiatedcontact with the central portion 104, then a selection signal indicativeof this detection is sent to the user interface interpretation module304 as described in FIG. 11 and operation flow passes to strokeoperation 720.

Stroke operation 720 detects whether the user has continued the inputstroke from the central portion 104 to an origination petal 502. If theuser has not continued directly to an origination petal 502, then aselection signal indicative of this detection is sent to the userinterface interpretation module 304 as described in FIG. 11 andoperation flow is terminated without completion of any input commands.In an alternative embodiment, if the user has not continued to anorigination petal 502, then a selection signal of this detection isinterpreted by the interface interpretation module 304 as a request toperform a particular task associated with the information elementreferenced by the central portion 104. If the user has continueddirectly to an origination petal 502, then a selection signal indicativeof this detection is sent to the user interface interpretation module304 as described in FIG. 11 and operation flow passes to returnoperation 722. Return operation detects whether the user's input strokecontinued directly from the origination petal 502 to the central portion104. If the input stroke has not continued directly to the centralportion 104, then a selection signal indicative of this detection issent to the user interface interpretation module 304 as described inFIG. 11 and operation flow passes to control drag-out operation 723.Control drag-out operation 723, an operation performed by the userinterface interpretation module 304, invokes the drag-out functions ofthe textual input technique for the specific macro or functionrepresented by the information element associated with the originationpetal 502. Once execution of the macro or function is complete,operation flow passes to information operation 712 and operation flowcontinues as earlier discussed.

If the user continues to the central portion 104, as detected by returnoperation 722, then a selection signal indicative of this detection issent to the user interface interpretation module 304 as described inFIG. 11 and operation flow passes to interface execution operation 724.Interface execution operation 724, an operation performed by the userinterface interpretation module 304, directs the user interfaceinterpretation module 304 to perform the task represented by theinformation element of the origination petal 502. After the task oroperation is executed, operation flow passes to information operation712 and operation flow continues as earlier discussed.

If it is detected in lift operation 700 that the user did not perform atouch and lift, then a selection signal indicative of this detection issent to the user interface interpretation module 304 as described inFIG. 11 and operation flow passes to drag operation 726. Drag operation726 detects whether the user has continued the input stroke directly tothe central portion 104. If the user has continued the input strokedirectly to the central portion 104, then a selection signal indicativeof this detection is sent to the user interface interpretation module304 as described in FIG. 11 and operation flow passes to interfaceexecution operation 724. Interface execution operation 724 directs theuser interface interpretation module 304 to perform the task representedby the information element of the origination petal 502 subject to thedrag-in detected by drag operation 726. After the task is performed,operation flow passes to information operation 712 and operation flowcontinues as earlier discussed.

If it is detected in drag operation 726 that the user has not continuedthe input stroke directly to the central portion 104, then a selectionsignal indicative of this detection is sent to the user interfaceinterpretation module 304 as described in FIG. 11 and operation flowpasses to petal operation 728. Petal operation 728 detects whether theuser's input stroke has continued to another petal 102. If the user hascontinued the input stroke to another petal 102, then a selection signalindicative of this detection is sent to the user interfaceinterpretation module 304 as described in FIG. 11 and operation flowpasses to interface calculation operation 730. If the input stroke hasnot continued to another petal 102, then a selection signal indicativeof this detection is sent to the user interface interpretation module304 as described in FIG. 11 and operation flow is terminated.

Interface calculation operation 730, an operation performed by the userinterface interpretation module 304, calculates the number of petals 102touched following initial contact on the tactile input device 100. Onceinterface calculation operation 730 terminates, interface rotationoperation 732, an operation performed by the user interfaceinterpretation module 304, rotates the information elements associatedwith the input sensing devices 120 of the petals 102 of the tactileinput device 100 in the direction (clockwise or counterclockwise) andnumber of petals 102 as calculated by the interface calculationoperation 730. By rotating the information elements, users can dictatewhich task is represented as the north petal 900 and primary menu item508 of the tactile input device 100. Accordingly, interface updateoperation 734, an operation performed by the user interfaceinterpretation module 304, generates information elements material tothe task that is currently referenced by the north petal 900 of thetactile input device 100. Following interface update operation 734,operation flow passes to control operation 713 and operation flowcontinues as earlier discussed.

In one embodiment of the present invention, the outer circumferentialportion 108 is used as a cancel lip to abort a command in the middle ofan input stroke. FIG. 10 is an illustration of a stroke cancel operationin accordance with one embodiment of the invention. The operational flowof FIG. 10 may be used in all operations of FIGS. 7 and 8 wherein theuser is currently performing an input stroke. In essence, theoperational flow of FIG. 10 resets the information elements associatedwith the input sensing devices 120 of the tactile input device 100 tothe immediate previous instance of the user interface. An instance is amomentary portrayal of the information elements of the user interfaceimmediately prior to the performance of a task.

Receive operation 1000 breaks operation flow and passes operation flowto abort operation 1002. Abort operation 1002 detects whether the inputstroke has continued from any position on the input device to the outercircumferential portion 108. If the input stroke has been extended tothe outer circumferential portion 108, then a cancel selection signalindicative of this detection is sent to the user interfaceinterpretation module 304 as described in FIG. 11 and operation flowpasses to interface reset operation 1004. Interface reset operation1004, an operation performed by the user interface interpretation module304, restores the information elements of the immediate previousinstance and operation flow passes to sensory operation 602. If theinput stroke has not been extended to the outer circumferential portion108, then transmit operation 1006 returns operation flow to the pointwhere it was interrupted by receive operation 1000.

Although the invention has been described in language specific tocomputer structural features, methodological acts and by computerreadable media, it is to be understood that the invention defined in theappended claims is not necessarily limited to the specific structures,acts or media described. As an example, other textual input methods maybe included in the user interface in combination with the tactile inputdevice. Therefore, the specific structural features, acts and mediumsare disclosed as exemplary embodiments implementing the claimedinvention.

The various embodiments described above are provided by way ofillustration only and should not be construed to limit the invention.Those skilled in the art will readily recognize various modificationsand changes that may be made to the present invention without followingthe example embodiments and applications illustrated and describedherein, and without departing from the true spirit and scope of thepresent invention, which is set forth in the following claims.

1. In a computing system having a user interface, the user interfacehaving a user interface selection device for inputting control commandsinto the computing system, the user interface selection devicecomprising: a tactile touchpad having a tactile pattern providingorientation feedback to a user selecting a specific user request, thetouchpad angularly divided by a plurality of petals, each petal beingtactilely distinguished from an adjacent petal and forming a singlesection; a central portion separating the center of the tactile touchpadfrom the plurality of petals, the central portion being tactilelydistinguished from the plurality of petals and forming a single section;an outer portion separating an outer boundary of the tactile touchpadfrom the plurality of petals, the outer portion being tactilelydistinguished from the plurality of petals and forming a single section;and a plurality of input sensing devices, each section having at leastone input sensing device detecting all or a portion of an input strokedefining a control command and transmitting a selection signalindicative of the control command to the computing system, wherein theinput stroke comprises a dial stroke beginning on a petal, continuing toat least one other petal, and terminating on the other petal, the dialstroke requesting rotation of a menu item control command so that thesections of the touchpad are generated updated control commands definedby the menu item control command.
 2. In a computing system having a userinterface, the user inter face having a user interface selection devicefor inputting control commands into the computing system, the userinterface selection device comprising: a tactile touchpad having atactile pattern providing orientation feedback to a user selecting aspecific user request, the touchpad angularly divided by a plurality ofpetals, each petal being tactilely distinguished from an adjacent petaland forming a single section; a central portion separating the center ofthe tactile touchpad from the plurality of petals, the central portionbeing tactilely distinguished from the plurality of petals and forming asingle section; an outer portion separating an outer boundary of thetactile touchpad from the plurality of petals, the outer portion beingtactilely distinguished from the plurality of petals and forming asingle section; and a plurality of input sensing devices, each sectionhaving at least one input sensing device detecting all or a portion ofan input stroke defining a control command and transmitting a selectionsignal indicative of the control command to the computing system,wherein the input stroke comprises a press stroke beginning andterminating on a petal, the press stroke requesting activation of anapplication installed on the computing system.
 3. In a computing systemhaving a user interface, the user interface having a user interfaceselection device for inputting inputting control and text commands intothe computing system, the user interface selection device comprising: atactile touchpad having a tactile pattern providing orientation feedbackto a user selecting a specific user request, the touchpad angularlydivided by a plurality of petals, each petal being tactilelydistinguished from an adjacent petal and forming a single section; acentral portion separating the center of the tactile touchpad from theplurality of petals, the central portion being tactilely distinguishedfrom the plurality of petals and forming a single section; an outerportion separating an outer boundary of the tactile touchpad from theplurality of petals, the outer portion being tactilely distinguishedfrom the plurality of petals and forming a single section; and aplurality of input sensing devices, each section having at least oneinput sensing device detecting all or a portion of an input strokedefining a control or text command and transmitting a selection signalindicative of the a control or text command to the computing system,wherein the input stroke contacts the outer circumferential portionthereby requesting cancellation of the performance of the commandidentified by the input stroke.
 4. In a computing system having a userinterface, the user interface having a user input device having atactile surface, a method for inputting control and text commands intothe computing system, the method comprising: locating a plurality ofinput sensing devices on a plurality of sections of the tactile surface,each section tactilely distinguished from an adjacent, section therebyproviding orientation feedback to a user selecting at least one inputsensing device associated with a specific user request; initializing theplurality of input sensing devices such that each input sensing deviceis associated with one of a plurality of information elements, whereineach information element is associated with a task to be performed bythe computing system; detecting user input stroke contacting at leastone of the plurality of input sensing devices, the input strokerequesting performance of the task associated with the informationelement associated with the contacted input sensing device; and inresponse to the detecting act, transmitting a selection signal to thecomputing system whereby a command is input into the computing system.5. The method according to claim 4 wherein the act of initializingcomprises: linking at least one input sensing device on a centralportion of the tactile surface with an information element, the centralportion being one of the plurality of sections; and linking at least oneinput sensing device on each of a plurality of petals angularly dividingthe tactile surface with an information element, each petal being one ofthe plurality of sections.
 6. The method according to claim 5 whereinthe act of transmitting comprises: conveying a text selection signalrequesting the computing system to enter a text-operating mode if thedetecting act detects that the input stroke begins on the centralportion.
 7. The method according to claim 5 wherein the act oftransmitting comprises: conveying a control selection signal requestingthe computing system to enter a control-operating mode if the detectingact detects that the input stroke begins on one of the plurality ofpetals.
 8. The method according to claim 7 wherein the act of conveyingcomprises: requesting the computing system to activate an application onthe user interface if the initial selection on one of the plurality ofpetals is the only selection of an input sensing device included in theinput stroke.
 9. The method according to claim 7 wherein the act ofconveying comprises: requesting the computing system to perform anoperation in an application if the initial selection on one of theplurality of petals is a beginning selection point of the input strokecontinuing from the petal directly to the central portion.
 10. Themethod according to claim 6 wherein the act of conveying comprises:requesting the computing system to input a textual character in anapplication if the central portion is a beginning selection point of theinput stroke continuing through at least one of the plurality petals andreturning directly to the central portion.
 11. The method according toclaim 5 wherein the act of associating further comprises: linking atleast one input sensing device on an outer circumferential portion ofthe tactile surface with an information element, the outercircumferential portion being one of the plurality of sections.
 12. Themethod according to claim 11 wherein the method for inputting controland text commands into a computing system further comprises: followingdetection of the input stroke on the outer circumferential portion,conveying a cancel selection signal requesting the computing system tocancel the user request associated with the command.
 13. The methodaccording to claim 4 wherein the task to be performed activates anapplication installed on the computing system.
 14. The method accordingto claim 13, wherein the act of initializing comprises: in response tothe transmitting act, associating at least one of the input sensingdevices with a new information element corresponding to a new task to beperformed by the computing system, wherein the new task is a controloperation of the application.
 15. The method according to claim 13,wherein the act of initializing comprises: in response to thetransmitting act, associating at least one of the input sensing deviceswith a new information element corresponding to a new task to beperformed by the computing system, wherein the new task is an operationfor inputting text into the application.